![]() |
Defines, in information property lists, general characteristics of a family of documents. Each abstract type has corresponding concrete types. See also concrete type.
address spaceDescribes the range of memory (both physical and virtual) that a process uses while running. In Mac OS X, processes do not share address space.
aliasA lightweight reference to files and folders in Mac OS Standard (HFS) and Mac OS Extended (HFS+) file systems. An alias allows multiple references to files and folders without requiring multiple copies of these items. Aliases are not as fragile as symbolic links because they identify the volume and location on disk of a referenced file or folder; the referenced file or folder can be moved around without breaking the alias. See also symbolic link.
Apple eventA high-level operating-system event that conforms to the Apple Event Interprocess Messaging Protocol (AEIMP). An Apple event typically consists of a message from an application to itself or to another application.
AppleTalkA suite of network protocols that is standard on Macintosh computers and can be integrated with other network systems, such as the Internet.
Application KitA Cocoa framework that implements an application's user interface. The Application Kit provides a basic program structure for applications that draw on the screen and respond to events.
ASCIIAmerican Standard Code for Information Interchange. A 7-bit character set (commonly represented using 8-bits) that defines 128 unique character codes. See also Unicode.
BSDBerkeley Software Distribution. Formerly known as the Berkeley version of UNIX, BSD is now simply called the BSD operating system. The BSD portion of Mac OS X is based on 4.4BSD Lite 2 and FreeBSD, a "flavor" of 4.4BSD.
buffered windowA window with a memory buffer into which all drawing is rendered. All graphics are first drawn in the buffer, then the buffer is flushed to the screen.
bundleA directory in the file system that stores executable code and the software resources related to that code. Applications, plug-ins, and frameworks are types of bundles. Except for frameworks, bundles are file packages, presented by the Finder as a single file.
CarbonAn application environment on Mac OS X that features a set of programming interfaces derived from earlier versions of the Mac OS. The Carbon APIs have been modified to work properly with Mac OS X, especially with the foundation of the operating system, the kernel environment. Carbon applications can run on Mac OS X, Mac OS 9, and all versions of Mac OS 8 later than Mac OS 8.1.
CFMCode Fragment Manager, the library manager and code loader for processes based on PEF object files (Carbon).
classIn object-oriented languages such as Java and Objective-C, a prototype for a particular kind of object. A class definition declares instance variables and defines methods for all members of the class. Objects that have the same types of instance variables and have access to the same methods belong to the same class.
ClassicAn application environment on Mac OS X that lets you run non-Carbon legacy Mac OS software. It supports programs built for both Power PC and 68k chip architectures and is fully integrated with the Finder and the other application environments.
CocoaAn advanced object-oriented development platform on Mac OS X. Cocoa is a set of frameworks with programming interfaces in both Java and Objective-C. It is based on the integration of OPENSTEP, Apple technologies, and Java.
compositingA method of overlaying separately rendered images into a final image. It encompasses simple copying as well as more sophisticated operations that take advantage of transparency.
cooperative multitaskingA multitasking environment in which a running program can receive processing time only if other programs allow it; each application must give up control of the processor "cooperatively" in order to allow others to run. Mac OS 8 and 9 are cooperative multitasking environments. See also preemptive multitasking.
DarwinAnother name for the Mac OS X core operating system. The Darwin kernel is equivalent to the Mac OS X kernel plus the BSD libraries and commands essential to the BSD Commands environment. Darwin is Open Source technology.
demand pagingAn operating system facility that causes pages of data to be brought from disk into physical memory only as they are needed.
device driverA component of an operating system that deals with getting data to and from a device, as well as the control of that device.
DVDDigital Versatile Disc or Digital Video Disc. An optical storage medium that provides greater capacity and bandwidth than CD-ROM; DVDs are frequently used for multimedia as well as data storage.
dyldDynamic link editor. The library manager for processes based on Mach-O object files.
dynamic shared libraryA library whose code can be shared by multiple, concurrently running programs. Programs share exactly one physical copy of the library code and do not require their own copies of that code. With dynamic shared libraries, a program not only attempts to resolve all undefined symbols at runtime, but attempts to do so only when those symbols are referenced during program execution.
EthernetA high-speed local area network technology.
exceptionAn interruption to the normal flow of program control caused by the program itself.
file packageA folder that the Finder presents to users as if it were a file. In other words, the Finder hides the contents of the folder from users. This opacity discourages users from inadvertently (or intentionally) altering the contents of the bundle.
firewallSoftware (or a computer running such software) that prevents unauthorized access to a network, by users outside of the network. (A physical firewall prevents the spread of fire between two physical locations; the software analog prevents the spread of unauthorized data).
fork
A stream of data that can be opened and accessed individually under a common filename. The Mac Standard and
Extended file systems store a separate "data" fork and a "resource" fork as part of
every file; data in each fork can be accessed and manipulated independently of the other. In BSD,
fork
is a system call that creates a new process.
A type of bundle that packages a dynamic shared library with the resources that the library requires, including header files and reference documentation.
HFSHierarchical File System. The Mac OS Standard file-system format, used to represent a collection of files as a hierarchy of directories (folders), each of which may contain either files or folders themselves. HFS is a two-fork volume format.
HFS+Hierarchical File System Plus. The Mac OS Extended file system format. This file-system format was introduced as part of Mac OS 8.1, adding support for file names longer than 31 characters, Unicode representation of file and directory names, and efficient operation on very large disks. HFS+ is a multiple-fork volume format.
hostThe computer that's running (is host to) a particular program. The term is usually used to refer to a computer on a network.
information property list
A property list that contains essential configuration information for bundles. A file named
Info.plist
(or a platform-specific variant of that filename) contains the information property
list and is packaged inside the bundle.
In object-oriented programming, the ability of a superclass to pass its characteristics (methods and instance variables) on to its subclasses.
internationalizationThe design or modification of a software product, including online help and documentation, to facilitate localization. Internationalization of software typically involves writing or modifying code to make use of locale-aware operating-system services for appropriate localized text input, display, formatting, and manipulation. See also localization.
instanceIn object-oriented languages such as Java and Objective-C, an object that belongs to (is a member of) a particular class. Instances are created at runtime according to the specification in the class definition.
kernelThe complete Mac OS X core operating-system environment which includes Mach, BSD, the I/O Kit, file systems, and networking components. Also called the kernel environment.
keyAn arbitrary value (usually a string) used to locate a datum in a data structure such as a dictionary.
localizationThe adaptation of a software product, including online help and documentation, for use in one or more regions of the world, in addition to the region for which the original product was created. Localization of software can include translation of user-interface text, resizing of text-related graphical elements, and replacement or modification of user-interface images and sound. See also internationalization.
MachThe lowest level of the Mac OS X kernel. Mach provides such basic services and abstractions as threads, tasks, ports, interprocess communication (IPC), scheduling, physical and virtual address space management, virtual memory, and timers.
Mach-O main threadBy default, a process has one thread, the main thread. If a process has multiple threads, the main thread is the first thread in the process. A user process can use the POSIX thread APIs to create other user threads.
major versionA framework version specifier designating a framework that is incompatible with programs linked with a previous version of the framework's dynamic shared library.
makefileA specification file used by the program make to build an executable version of an application. A makefile details the files, dependencies, and rules by which the application is built.
memory protectionA system of memory management in which programs are prevented from being able to modify or corrupt the memory partition of another program. Mac OS 8 and 9 do not have memory protection; Mac OS X does.
memory-mapped filesA facility that maps virtual memory onto a physical file. Thereafter, any access to that part of virtual memory causes the corresponding page of the physical file to be accessed. The contents of the file can be changed by changing the contents in the memory.
methodIn object-oriented programming, a procedure that can be executed by an object.
minor versionA framework version specifier designating a framework that is compatible with programs linked with later builds of the framework within the same major version.
multicastA process in which a single network packet may be addressed to multiple recipients. Multicast is used, for example, in streaming video, in which many megabytes of data are sent over the network.
multihomingThe ability to have multiple network addresses in one computer. For example, multihoming might be used to create a system in which one address is used to talk to hosts outside a firewall and the other to talk to hosts inside; the computer provides facilities for passing information between the two.
multitaskingThe concurrent execution of multiple programs. Mac OS X uses preemptive multitasking. Mac OS 8 and 9 use cooperative multitasking.
networkA group of hosts that can directly communicate with each other.
NFSNetwork File System. An NFS file server allows users on the network to share files on other hosts as if they were on their own local disks.
Open TransportOpen Transport is a communications architecture for implementing network protocols and other communication features on computers running the Mac OS. Open Transport provides a set of programming interfaces that supports, among other things, both the AppleTalk and TCP/IP protocols.
Open Source
A definition of software which includes freely available access to source code, redistribution, modification,
and derived works. The full definition is available at www.opensource.org
.
A window without an off-screen buffer for screen pixel values.
objectA programming unit that groups together a data structure (instance variables) and the operations (methods) that can use or affect that data. Objects are the principal building blocks of object-oriented programs.
physical addressAn address to which a hardware device, such as a memory chip, can directly respond. Programs, including the Mach kernel, use virtual addresses that are translated to physical addresses by mapping hardware controlled by the Mach kernel.
pixelThe basic logical unit of programmable color on a computer display or in a computer image. The physical size of a pixel depends on the resolution of the display screen.
PEFPreferred Executable Format. An executable format understood by the Code Fragment Manager.
POSIXThe Portable Operating System Interface. An operating-system interface standardization effort supported by ISO/IEC, IEEE, and The Open Group.
portIn Mach, a secure unidirectional channel for communication between tasks running on a single system. In IP transport protocols, an integer identifier used to select a receiver for an incoming packet or to specify the sender of an outgoing packet.
preemptive multitaskingA type of multitasking in which the operating system can interrupt a currently running task in order to run another task, as needed. See also cooperative multitasking.
preemptionThe act of interrupting a currently running task in order to give time to another task.
processA BSD abstraction for a running program. A process' resources include a virtual address space, threads, and file descriptors. In Mac OS X, a process is based on one Mach task and one or more Mach threads.
property listA structured, textual representation of data that uses the Extensible Markup Language (XML) as the structuring medium. Elements of a property list represent data of certain types, such as arrays, dictionaries, and strings.
Pthreads RAMRandom-access memory. Memory that a microprocessor can either read or write to.
real timeIn reference to operating systems, a guarantee of a certain capability within a specified time constraint, thus permitting predictable, time-critical behavior. If the user defines or initiates an event and the event occurs instantaneously, the computer is said to be operating in real time. Real-time support is especially important for multimedia applications.
retained windowA window with an off-screen buffer for screen pixel values. Images are rendered into the buffer for any portions of the window that aren't visible onscreen.
role
An identifier of an application's relation to a document type. There are three roles: Editor
(reads and modifies), Viewer
(can only read), and None
(declares information about
type). You specify document roles in an application's information property list.
Read-only memory, that is, memory that cannot be written to.
SCSISmall Computer Systems Interface. A standard connector and communications protocol used for connecting devices such as disk drives to computers.
schedulingThe determination of when each process or task runs, including assignment of start times.
SMPSymmetric multiprocessing. A feature of an operating system in which two or more processors are managed by one kernel, sharing the same memory, having equal access to I/O devices, and in which any task, including kernel tasks, can run on any processor.
socket
In BSD-derived systems, a socket refers to different entities in user and kernel operation. For a user
process, a socket is a file descriptor that has been allocated using socket(2)
. For the kernel,
a socket is the data structure that is allocated when the kernel's implementation of the
socket(2)
call is made. In AppleTalk protocols, a socket serves the same purpose as a
"port" in IP transport protocols.
A public framework that packages a specific Apple technology, such as Apple events or Open Transport. Through various mechanisms, Apple prevents or discourages developers from including or directly linking with subframeworks. See also umbrella framework.
symbolic linkA lightweight reference to files and folders in UFS file systems. A symbolic link allows multiple references to files and folders without requiring multiple copies of these items. Symbolic links are fragile because if what they refer to moves somewhere else in the file system, the link breaks. However, they are useful in cases where the location of the referenced file or folder will not change. See also alias.
system frameworkA framework developed by Apple and installed in the file-system location for system software.
taskA Mach abstraction, consisting of a virtual address space and a port name space. A task itself performs no computation; rather, it is the framework in which threads run. See also thread.
threadIn Mach, the unit of CPU utilization. A thread consists of a program counter, a set of registers, and a stack pointer. See also task.
thread-safe codeCode that can be used safely by several threads simultaneously.
TCP/IPTransmission Control Protocol/Internet Protocol. An industry standard protocol used to deliver messages between computers over the network. TCP/IP support is included in Mac OS X.
transformationAn alteration to a coordinate system that defines a new coordinate system. Standard transformations include rotation, scaling, and translation. A transformation is represented by a matrix.
umbrella frameworkA system framework that includes and links with constituent subframeworks and other public frameworks. An umbrella framework "contains" the system software defining an application environment or a layer of system software. See also subframework.
UFSUNIX file system. An industry standard file-system format used in UNIX-like operating systems such as BSD. UFS in Mac OS X is a derivative of 4.4BSD UFS. Specifically, its disk layout is not compatible with other BSD UFS implementations.
UDFUniversal Disk Format. The file-system format used in DVD disks.
UnicodeA 16-bit character set that assigns unique character codes to characters in a wide range of languages. Unlike ASCII, which defines 128 distinct characters typically represented in 8 bits, there are as many as 65,536 distinct Unicode characters that represent the unique characters used in many languages.
versioningWith frameworks, schemes to implement backward and forward compatibility of frameworks. Versioning information is written into a framework's dynamic shared library and is also reflected in the internal structure of a framework. See also major version, minor version.
virtual addressAn address that is usable by software. Each task has its own range of virtual addresses, which begins at address zero. The Mach operating system makes the CPU hardware map these addresses onto physical memory only when necessary, using disk memory at other times. See also physical address.
VFSVirtual File System. A set of standard internal file-system interfaces and utilities that facilitate support for additional file systems. VFS provides an infrastructure for file systems built in the kernel.
virtual memory(VM) The use of a disk partition or a file on disk to provide the same facilities usually provided by RAM. The virtual-memory manger on Mac OS X provides 32-bit (minimum) protected address space for each task and facilitates efficient sharing of that address space.